/*
 *
 * This file is part of Aion SLX Emu.
 *
 * This is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser Public License for more details.
 *
 * You should have received a copy of the GNU Lesser Public License
 * along with this software.  If not, see <http://www.gnu.org/licenses/>.
 * 
 * Homepage : http://team-lx.net
 * Support Client Version : Aion 2.7 - (NA) 
 * Aion Emulator Version : Aion SLX 2.7
 */
 
package gameserver.services;

import gameserver.model.gameobjects.Monster;
import gameserver.model.gameobjects.player.Player;
import gameserver.model.group.PlayerGroup;
import gameserver.model.templates.spawn.SpawnTemplate;
import gameserver.utils.PacketSendUtility;
import gameserver.spawn.SpawnEngine;

/**
 * @Made By TEAM LX
 */

 public class SulfurInstanceService
 {
	public void onGroupReward(Monster monster, PlayerGroup group)
	{
		//When kill a Ashikar Geomancer spawn 12 Ashikar Escort
		if(monster.getObjectTemplate().getTemplateId() == 214736)
		{
			SpawnTemplate monster1, monster2, monster3, monster4, monster5, monster6, monster7, monster8, monster9, monster10, monster11, monster12;
			
			monster1 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 429.35876f, 395.37857f, 165.78033f, (byte)40, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster1, group.getGroupLeader().getInstanceId());
			
			monster2 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 449.87512f, 401.4326f, 165.78334f, (byte)114, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster2, group.getGroupLeader().getInstanceId());
			
			monster3 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 497.89188f, 557.6283f, 165.77994f, (byte)5, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster3, group.getGroupLeader().getInstanceId());
			
			monster4 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 428.1256f, 538.21466f, 163.9263f, (byte)106, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster4, group.getGroupLeader().getInstanceId());
			
			monster5 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 536.82056f, 515.0598f, 164.01668f, (byte)97, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster5, group.getGroupLeader().getInstanceId());
			
			monster6 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 514.153f, 519.2576f, 164.01677f, (byte)80, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster6, group.getGroupLeader().getInstanceId());
			
			monster7 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 395.67276f, 520.0328f, 164.01718f, (byte)97, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster7, group.getGroupLeader().getInstanceId());
			
			monster8 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 396.22305f, 522.3028f, 164.01755f, (byte)103, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster8, group.getGroupLeader().getInstanceId());
			
			monster9 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 510.94836f, 555.94006f, 165.77994f, (byte)113, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster9, group.getGroupLeader().getInstanceId());
			
			monster10 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 388.61203f, 457.65652f, 164.02037f, (byte)75, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster10, group.getGroupLeader().getInstanceId());
			
			monster11 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 412.23602f, 425.88657f, 163.91075f, (byte)42, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster11, group.getGroupLeader().getInstanceId());
			
			monster12 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214734, 519.2232f, 438.2741f, 164.01657f, (byte)70, 0, 0, true);
			SpawnEngine.getInstance().spawnObject(monster12, group.getGroupLeader().getInstanceId());
		}
		
		//When kills 12 Ashikar Escort spawn 7 Ashikar Sarhang
		if(monster.getObjectTemplate().getTemplateId() == 214734)
		{
			group.setInstanceKills(group.getInstanceKills() + 1);
			
			if (group.getInstanceKills() == 12) {
				SpawnTemplate monster1, monster2, monster3, monster4, monster5, monster6, monster7;
				
				monster1 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214739, 466.1575f, 462.4482f, 163.1594f, (byte)60, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster1, group.getGroupLeader().getInstanceId());
				
				monster2 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214739, 479.04193f, 521.2662f, 162.71265f, (byte)112, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster2, group.getGroupLeader().getInstanceId());
				
				monster3 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214739, 483.9138f, 487.58405f, 163.15588f, (byte)98, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster3, group.getGroupLeader().getInstanceId());
				
				monster4 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214739, 498.42075f, 480.7167f, 162.84128f, (byte)97, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster4, group.getGroupLeader().getInstanceId());
				
				monster5 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214739, 436.0141f, 455.64178f, 162.71124f, (byte)104, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster5, group.getGroupLeader().getInstanceId());
				
				monster6 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214739, 439.7423f, 515.9775f, 162.71384f, (byte)29, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster6, group.getGroupLeader().getInstanceId());
				
				monster7 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214739, 471.00125f, 583.70105f, 165.77994f, (byte)10, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster7, group.getGroupLeader().getInstanceId());	
			}
		}
		
		//When kills 7 Ashikar Sarhang spawn 11 Ashikar Scourge
		if(monster.getObjectTemplate().getTemplateId() == 214739)
		{
			group.setInstanceKills(group.getInstanceKills() + 2);
			
			if (group.getInstanceKills() == 7) {
				SpawnTemplate monster1, monster2, monster3, monster4, monster5, monster6, monster7, monster8, monster9, monster10, monster11;
				
				monster1 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 420.52133f, 451.1877f, 162.71101f, (byte)75, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster1, group.getGroupLeader().getInstanceId());
				
				monster2 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 453.9806f, 560.4933f, 165.77994f, (byte)30, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster2, group.getGroupLeader().getInstanceId());
				
				monster3 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 445.78946f, 498.4954f, 162.71269f, (byte)80, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster3, group.getGroupLeader().getInstanceId());
				
				monster4 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 482.81033f, 441.08548f, 162.71074f, (byte)82, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster4, group.getGroupLeader().getInstanceId());
				
				monster5 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 462.6993f, 513.6794f, 162.81834f, (byte)97, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster5, group.getGroupLeader().getInstanceId());
				
				monster6 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 419.17587f, 489.86398f, 163.3545f, (byte)65, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster6, group.getGroupLeader().getInstanceId());
				
				monster7 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 505.84927f, 507.87894f, 162.7111f, (byte)86, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster7, group.getGroupLeader().getInstanceId());
				
				monster8 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 443.6188f, 462.90256f, 162.71141f, (byte)67, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster8, group.getGroupLeader().getInstanceId());
				
				monster9 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 445.93332f, 439.2286f, 162.71098f, (byte)111, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster9, group.getGroupLeader().getInstanceId());
				
				monster10 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 456.44086f, 582.2223f, 165.77994f, (byte)92, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster10, group.getGroupLeader().getInstanceId());
				
				monster11 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214737, 463.1256f, 450.6665f, 162.78937f, (byte)1, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster11, group.getGroupLeader().getInstanceId());
			}
		}
		
		//When kills 11 Ashikar Scourge spawn 16 Ashikar Sentinel
		if(monster.getObjectTemplate().getTemplateId() == 214737)
		{
			group.setInstanceKills(group.getInstanceKills() + 3);
			
			if (group.getInstanceKills() == 11) {
				SpawnTemplate monster1, monster2, monster3, monster4, monster5, monster6, monster7, monster8, monster9, monster10, monster11, monster12, monster13, monster14, monster15, monster16;
				
				monster1 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 512.4972f, 423.99707f, 164.24539f, (byte)95, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster1, group.getGroupLeader().getInstanceId());
		
				monster2 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 421.93997f, 412.23837f, 165.77994f, (byte)105, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster2, group.getGroupLeader().getInstanceId());
		
				monster3 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 530.0469f, 489.827f, 164.01668f, (byte)82, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster3, group.getGroupLeader().getInstanceId());
		
				monster4 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 391.75015f, 489.27765f, 164.01709f, (byte)92, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster4, group.getGroupLeader().getInstanceId());
		
				monster5 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 469.34616f, 417.3772f, 163.92845f, (byte)59, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster5, group.getGroupLeader().getInstanceId());
		
				monster6 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 440.25586f, 541.8199f, 163.9292f, (byte)41, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster6, group.getGroupLeader().getInstanceId());
		
				monster7 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 505.4755f, 410.63367f, 165.78157f, (byte)29, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster7, group.getGroupLeader().getInstanceId());
		
				monster8 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 400.8623f, 449.09302f, 164.01392f, (byte)14, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster8, group.getGroupLeader().getInstanceId());
		
				monster9 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 536.82275f, 512.995f, 164.01668f, (byte)64, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster9, group.getGroupLeader().getInstanceId());
		
				monster10 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 428.5687f, 556.6279f, 165.77994f, (byte)40, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster10, group.getGroupLeader().getInstanceId());
		
				monster11 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 413.28436f, 520.876f, 164.0198f, (byte)91, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster11, group.getGroupLeader().getInstanceId());
		
				monster12 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 495.19345f, 395.40643f, 165.7819f, (byte)62, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster12, group.getGroupLeader().getInstanceId());
		
				monster13 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 426.19916f, 560.80786f, 165.77994f, (byte)15, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster13, group.getGroupLeader().getInstanceId());
		
				monster14 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 528.6268f, 445.58304f, 164.01668f, (byte)42, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster14, group.getGroupLeader().getInstanceId());
		
				monster15 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 505.2795f, 532.03845f, 164.01208f, (byte)99, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster15, group.getGroupLeader().getInstanceId());
		
				monster16 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214733, 456.5189f, 417.3537f, 163.92717f, (byte)56, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster16, group.getGroupLeader().getInstanceId());
			}
		}
		
		//When kills 16 Ashikar Sentinel spawn 31 Pesky Drakie
		if(monster.getObjectTemplate().getTemplateId() == 214733)
		{
			group.setInstanceKills(group.getInstanceKills() + 4);
			
			if (group.getInstanceKills() == 16) {
				SpawnTemplate monster1, monster2, monster3, monster4, monster5, monster6, monster7, monster8, monster9, monster10, monster11, monster12, monster13, monster14, monster15, monster16, monster17, monster18, monster19, monster20, monster21, monster22, monster23, monster24, monster25, monster26, monster27, monster28, monster29, monster30, monster31;
			
				monster1 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 476.52518f, 519.81866f, 162.71266f, (byte)33, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster1, group.getGroupLeader().getInstanceId());
		
				monster2 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 410.6018f, 527.24133f, 164.01859f, (byte)119, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster2, group.getGroupLeader().getInstanceId());
		
				monster3 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 391.40106f, 481.18826f, 164.01709f, (byte)9, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster3, group.getGroupLeader().getInstanceId());
		
				monster4 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 410.27335f, 426.44443f, 163.91156f, (byte)59, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster4, group.getGroupLeader().getInstanceId());
		
				monster5 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 508.99872f, 394.70255f, 165.77994f, (byte)85, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster5, group.getGroupLeader().getInstanceId());
		
				monster6 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 515.0419f, 527.14716f, 164.01703f, (byte)71, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster6, group.getGroupLeader().getInstanceId());
		
				monster7 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 443.72116f, 452.9844f, 162.71123f, (byte)25, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster7, group.getGroupLeader().getInstanceId());
		
				monster8 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 392.84637f, 455.32498f, 164.0168f, (byte)50, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster8, group.getGroupLeader().getInstanceId());
		
				monster9 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 496.48373f, 454.18564f, 162.71072f, (byte)47, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster9, group.getGroupLeader().getInstanceId());
		
				monster10 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 394.3538f, 489.10657f, 164.01712f, (byte)99, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster10, group.getGroupLeader().getInstanceId());
		
				monster11 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 526.3406f, 557.4628f, 165.77994f, (byte)61, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster11, group.getGroupLeader().getInstanceId());
		
				monster12 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 435.8476f, 495.87012f, 162.71246f, (byte)104, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster12, group.getGroupLeader().getInstanceId());
		
				monster13 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 420.57318f, 475.02942f, 162.80327f, (byte)1, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster13, group.getGroupLeader().getInstanceId());
		
				monster14 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 471.29245f, 581.3474f, 165.77994f, (byte)30, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster14, group.getGroupLeader().getInstanceId());
		
				monster15 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 415.46808f, 406.41464f, 165.78331f, (byte)4, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster15, group.getGroupLeader().getInstanceId());
		
				monster16 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 472.77548f, 506.8135f, 162.80295f, (byte)98, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster16, group.getGroupLeader().getInstanceId());
		
				monster17 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 534.5592f, 477.76044f, 164.01668f, (byte)58, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster17, group.getGroupLeader().getInstanceId());
		
				monster18 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 451.66592f, 429.95673f, 162.71085f, (byte)98, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster18, group.getGroupLeader().getInstanceId());
		
				monster19 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 504.77728f, 561.23f, 165.77994f, (byte)45, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster19, group.getGroupLeader().getInstanceId());
		
				monster20 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 419.7296f, 564.9151f, 165.77994f, (byte)115, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster20, group.getGroupLeader().getInstanceId());
		
				monster21 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 444.71634f, 572.3436f, 165.77994f, (byte)19, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster21, group.getGroupLeader().getInstanceId());
		
				monster22 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 430.32913f, 396.31946f, 165.78027f, (byte)111, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster22, group.getGroupLeader().getInstanceId());
		
				monster23 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 527.7291f, 442.9352f, 164.0166f, (byte)39, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster23, group.getGroupLeader().getInstanceId());
		
				monster24 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 467.37653f, 462.84634f, 163.16054f, (byte)4, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster24, group.getGroupLeader().getInstanceId());
		
				monster25 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 467.86685f, 543.5169f, 163.97934f, (byte)78, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster25, group.getGroupLeader().getInstanceId());
		
				monster26 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 489.5877f, 487.9605f, 162.82707f, (byte)75, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster26, group.getGroupLeader().getInstanceId());
		
				monster27 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 518.259f, 499.81036f, 163.5235f, (byte)91, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster27, group.getGroupLeader().getInstanceId());
		
				monster28 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 524.88434f, 521.0231f, 164.01672f, (byte)16, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster28, group.getGroupLeader().getInstanceId());
		
				monster29 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 396.5607f, 518.3954f, 164.02017f, (byte)27, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster29, group.getGroupLeader().getInstanceId());
		
				monster30 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 493.4985f, 399.64093f, 165.7825f, (byte)110, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster30, group.getGroupLeader().getInstanceId());
		
				monster31 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214803, 500.30923f, 415.9239f, 165.77994f, (byte)69, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster31, group.getGroupLeader().getInstanceId());
			}
		}
		
		//When kills 31 Pesky Drakie spawn 6 Ashikar Sentinel
		if(monster.getObjectTemplate().getTemplateId() == 214803)
		{
			group.setInstanceKills(group.getInstanceKills() + 5);
			
			if (group.getInstanceKills() == 31) {
				SpawnTemplate monster1, monster2, monster3, monster4, monster5, monster6;
				
				monster1 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214735, 515.3419f, 397.18652f, 165.77994f, (byte)107, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster1, group.getGroupLeader().getInstanceId());
		
				monster2 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214735, 388.87167f, 447.74084f, 164.01668f, (byte)80, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster2, group.getGroupLeader().getInstanceId());
		
				monster3 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214735, 415.6144f, 520.89526f, 164.02014f, (byte)84, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster3, group.getGroupLeader().getInstanceId());
		
				monster4 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214735, 517.4572f, 566.3169f, 165.77994f, (byte)88, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster4, group.getGroupLeader().getInstanceId());
		
				monster5 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214735, 527.5656f, 443.91592f, 164.01666f, (byte)3, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster5, group.getGroupLeader().getInstanceId());
		
				monster6 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214735, 533.8549f, 467.93707f, 164.01668f, (byte)4, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster6, group.getGroupLeader().getInstanceId());
			}
		}
		
		//When kills 6 Ashikar Sentinel spawn 6 Ashikar Supplicator
		if(monster.getObjectTemplate().getTemplateId() == 214735)
		{
			group.setInstanceKills(group.getInstanceKills() + 6);
			
			if (group.getInstanceKills() == 6) {
				SpawnTemplate monster1, monster2, monster3, monster4, monster5, monster6;
				
				monster1 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214738, 422.5832f, 475.0415f, 162.80374f, (byte)76, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster1, group.getGroupLeader().getInstanceId());
		
				monster2 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214738, 496.24167f, 452.4829f, 162.71072f, (byte)1, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster2, group.getGroupLeader().getInstanceId());
		
				monster3 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214738, 481.76913f, 510.28983f, 162.71204f, (byte)84, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster3, group.getGroupLeader().getInstanceId());
		
				monster4 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214738, 488.8084f, 472.8041f, 162.82657f, (byte)3, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster4, group.getGroupLeader().getInstanceId());
		
				monster5 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214738, 452.6109f, 437.8379f, 162.80061f, (byte)84, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster5, group.getGroupLeader().getInstanceId());
		
				monster6 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214738, 485.1807f, 571.7166f, 165.77994f, (byte)96, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster6, group.getGroupLeader().getInstanceId());
			}
		}
		
		//When kills 6 Ashikar Supplicator spawn 40 Ancient Treasure Box
		if(monster.getObjectTemplate().getTemplateId() == 214738)
		{
			group.setInstanceKills(group.getInstanceKills() + 7);
			
			if (group.getInstanceKills() == 6) {
				SpawnTemplate monster1, monster2, monster3, monster4, monster5, monster6, monster7, monster8, monster9, monster10 ,monster11 ,monster12, monster13, monster14, monster15, monster16, monster17, monster18, monster19, monster20, monster21, monster22, monster23, monster24, monster25, monster26, monster27, monster28, monster29, monster30, monster31, monster32, monster33, monster34, monster35, monster36, monster37, monster38, monster39, monster40;
		
				monster1 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 527.25134f, 496.43414f, 164.00598f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster1, group.getGroupLeader().getInstanceId());
		
				monster2 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 528.35229f, 439.26746f, 163.94373f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster2, group.getGroupLeader().getInstanceId());
		
				monster3 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 519.47461f, 518.55237f, 163.94141f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster3, group.getGroupLeader().getInstanceId());
		
				monster4 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 409.54141f, 435.24435f, 163.96277f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster4, group.getGroupLeader().getInstanceId());
		
				monster5 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 445.61453f, 431.87125f, 163.27148f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster5, group.getGroupLeader().getInstanceId());
		
				monster6 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 416.25208f, 534.19904f, 163.95349f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster6, group.getGroupLeader().getInstanceId());
		
				monster7 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 432.35739f, 392.04459f, 165.76465f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster7, group.getGroupLeader().getInstanceId());
		
				monster8 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 507.82022f, 554.06842f, 165.71912f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster8, group.getGroupLeader().getInstanceId());
		
				monster9 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 455.68448f, 568.59552f, 165.76685f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster9, group.getGroupLeader().getInstanceId());
		
				monster10 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 520.83026f, 563.16382f, 165.71912f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster10, group.getGroupLeader().getInstanceId());
		
				monster11 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 465.49854f, 587.36841f, 165.76685f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster11, group.getGroupLeader().getInstanceId());
		
				monster12 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 419.83539f, 527.80206f, 163.99585f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster12, group.getGroupLeader().getInstanceId());
		
				monster13 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 418.73886f, 412.38947f, 165.76465f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster13, group.getGroupLeader().getInstanceId());
		
				monster14 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 445.31238f, 496.548f, 163.04184f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster14, group.getGroupLeader().getInstanceId());
		
				monster15 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 515.72363f, 535.69409f, 163.94141f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster15, group.getGroupLeader().getInstanceId());
		
				monster16 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 510.94189f, 534.09222f, 163.97192f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster16, group.getGroupLeader().getInstanceId());
		
				monster17 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 455.19473f, 586.16571f, 165.76685f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster17, group.getGroupLeader().getInstanceId());
		
				monster18 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 394.091f, 524.65729f, 163.99585f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster18, group.getGroupLeader().getInstanceId());
		
				monster19 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 521.7464f, 569.94232f, 165.75647f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster19, group.getGroupLeader().getInstanceId());
		
				monster20 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 482.4462f, 482.80005f, 163.30054f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster20, group.getGroupLeader().getInstanceId());
		
				monster21 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 463.89227f, 468.80481f, 163.64856f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster21, group.getGroupLeader().getInstanceId());
		
				monster22 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 391.9989f, 519.24481f, 163.99585f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster22, group.getGroupLeader().getInstanceId());
		
				monster23 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 505.5025f, 416.00174f, 165.66785f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster23, group.getGroupLeader().getInstanceId());
		
				monster24 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 521.60999f, 515.38434f, 163.94141f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster24, group.getGroupLeader().getInstanceId());
		
				monster25 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 484.37262f, 581.9162f, 165.76685f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster25, group.getGroupLeader().getInstanceId());
		
				monster26 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 543.16101f, 472.79974f, 163.96777f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster26, group.getGroupLeader().getInstanceId());
		
				monster27 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 423.2471f, 391.05603f, 165.76465f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster27, group.getGroupLeader().getInstanceId());
		
				monster28 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 516.77039f, 393.95364f, 165.78601f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster28, group.getGroupLeader().getInstanceId());
		
				monster29 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 499.18433f, 448.60931f, 162.69763f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster29, group.getGroupLeader().getInstanceId());
		
				monster30 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 532.26044f, 444.72189f, 163.89941f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster30, group.getGroupLeader().getInstanceId());
		
				monster31 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 410.96521f, 411.45163f, 165.76465f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster31, group.getGroupLeader().getInstanceId());
			
				monster32 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 495.51266f, 478.716f, 162.68921f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster32, group.getGroupLeader().getInstanceId());
		
				monster33 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 477.38443f, 463.9129f, 163.05548f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster33, group.getGroupLeader().getInstanceId());
		
				monster34 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 533.13251f, 488.28049f, 164.01331f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster34, group.getGroupLeader().getInstanceId());
		
				monster35 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 489.69299f, 437.53018f, 162.69763f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster35, group.getGroupLeader().getInstanceId());
		
				monster36 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 416.56384f, 490.88199f, 162.68152f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster36, group.getGroupLeader().getInstanceId());
		
				monster37 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 469.83951f, 547.76172f, 163.90967f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster37, group.getGroupLeader().getInstanceId());
		
				monster38 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 441.9588f, 483.54709f, 163.00771f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster38, group.getGroupLeader().getInstanceId());
		
				monster39 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 493.52682f, 461.69434f, 162.62802f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster39, group.getGroupLeader().getInstanceId());
		
				monster40 = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 700463, 458.3392f, 436.15979f, 163.15601f, (byte)0, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(monster40, group.getGroupLeader().getInstanceId());
			}
		}
		
		//When kills 40 Ancient Treasure Box spawn 1 Treasure Big Center
		if(monster.getObjectTemplate().getTemplateId() == 700463)
		{
			group.setInstanceKills(group.getInstanceKills() + 8);
			
			if (group.getInstanceKills() == 40) {
				SpawnTemplate treasurebig;
				
				treasurebig = SpawnEngine.getInstance().addNewSpawn(300060000, group.getGroupLeader().getInstanceId(), 214804, 462.8966f, 487.69592f, 165.08131f, (byte)91, 0, 0, true);
				SpawnEngine.getInstance().spawnObject(treasurebig, group.getGroupLeader().getInstanceId());	
			}
		}
	}
	
	public static SulfurInstanceService getInstance() {
		return SingleonHolder.instance;
	}
	
	@SuppressWarnings("synthetic-access")
	private static class SingleonHolder
	{
		protected static final SulfurInstanceService instance = new SulfurInstanceService();
	}
	
}
	